{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 01 Frequency tables & dot plots" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "scrolled": true }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import pandas as pd\n", "import plotly.graph_objects as go\n", "import seaborn as sns\n", "from statsmodels.graphics.dotplots import dot_plot" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "import findspark\n", "\n", "findspark.init()\n", "from pyspark.context import SparkContext\n", "from pyspark.sql import functions as F\n", "from pyspark.sql.session import SparkSession\n", "\n", "spark = SparkSession.builder.appName(\"statistics\").master(\"local\").getOrCreate()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![Frequency tables & dot plots fig 1](./imgs/02-01-01.png)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "dataset = {\"Age\": [5, 7, 5, 9, 7, 7, 6, 9, 9, 9, 10, 12, 12, 7]}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## DataFrame" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### pandas" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Age
05
17
25
39
47
57
66
79
89
99
1010
1112
1212
137
\n", "
" ], "text/plain": [ " Age\n", "0 5\n", "1 7\n", "2 5\n", "3 9\n", "4 7\n", "5 7\n", "6 6\n", "7 9\n", "8 9\n", "9 9\n", "10 10\n", "11 12\n", "12 12\n", "13 7" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.DataFrame(dataset)\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Spark" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "+---+\n", "|Age|\n", "+---+\n", "| 5|\n", "| 7|\n", "| 5|\n", "| 9|\n", "| 7|\n", "| 7|\n", "| 6|\n", "| 9|\n", "| 9|\n", "| 9|\n", "| 10|\n", "| 12|\n", "| 12|\n", "| 7|\n", "+---+\n", "\n" ] } ], "source": [ "sdf = spark.createDataFrame(zip(*dataset.values()), schema=list(dataset.keys()))\n", "sdf.show()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Age
05
17
25
39
47
57
66
79
89
99
1010
1112
1212
137
\n", "
" ], "text/plain": [ " Age\n", "0 5\n", "1 7\n", "2 5\n", "3 9\n", "4 7\n", "5 7\n", "6 6\n", "7 9\n", "8 9\n", "9 9\n", "10 10\n", "11 12\n", "12 12\n", "13 7" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.DataFrame(dataset)\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Range" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Pandas" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "7" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df['Age'].max() - df['Age'].min()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Spark" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "7" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sdf.select(\"Age\").rdd.max()[0] - sdf.select(\"Age\").rdd.min()[0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Frequency table " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Pandas" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Age# at age
074
194
252
3122
461
5101
\n", "
" ], "text/plain": [ " Age # at age\n", "0 7 4\n", "1 9 4\n", "2 5 2\n", "3 12 2\n", "4 6 1\n", "5 10 1" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "freq_table_series = df[\"Age\"].value_counts()\n", "freq_table_data = {\n", " \"Age\": freq_table_series.index,\n", " \"# at age\": freq_table_series.values.tolist(),\n", "}\n", "freq_table_df = pd.DataFrame(freq_table_data)\n", "freq_table_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Spark" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "+---+--------+\n", "|Age|# at age|\n", "+---+--------+\n", "| 7| 4|\n", "| 9| 4|\n", "| 5| 2|\n", "| 12| 2|\n", "| 6| 1|\n", "| 10| 1|\n", "+---+--------+\n", "\n" ] } ], "source": [ "freq_table_sdf = spark.createDataFrame(\n", " zip(*freq_table_data.values()), schema=list(freq_table_data.keys())\n", ")\n", "freq_table_sdf.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## How many older than 9" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Pandas" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Age# at age
3122
5101
\n", "
" ], "text/plain": [ " Age # at age\n", "3 12 2\n", "5 10 1" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "freq_table_df[freq_table_df[\"Age\"] > 9]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Spark" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "+---+--------+\n", "|Age|# at age|\n", "+---+--------+\n", "| 12| 2|\n", "| 10| 1|\n", "+---+--------+\n", "\n" ] } ], "source": [ "freq_table_sdf[freq_table_sdf[\"Age\"] > 9].show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Pandas" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAD4CAYAAADhNOGaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAAASYUlEQVR4nO3de5Cdd33f8fcHScE2cezW2gRXF9YpHhJCMJjFQCiU4rgxl9hJMK2ZkABDojS1G2gz09hMxySe6UyYSeMUSCGqTREOF4OAjACTYAZC4A9k1kL4JmhUYrCEWy82WDEQG7nf/nEep8t6VzqS9Tsn2t/7NXNGz+X3nP2c2Rl99rmc50lVIUnq12OmHUCSNF0WgSR1ziKQpM5ZBJLUOYtAkjq3dtoBjtT69etrdnZ22jEk6bhy0003fbOqZpZbd9wVwezsLPPz89OOIUnHlSRfW2mdh4YkqXMWgSR1ziKQpM5ZBJLUOYtAkjpnEUhS55oXQZI1Sb6Y5KPLrHtskuuS7E2yM8ls6zySpB80iT2C1wF7Vlj3WuBbVfVE4CrgTRPII0lapGkRJNkIvAS4eoUhFwLbhuntwLlJ0jKTJOkHtf5m8R8B/xE4eYX1G4A7AarqYJL7gNOAby4elGQLsAVg8+bNrbJqlZi97GPTjjBxd/z+S6YdYeL8PR87zfYIkrwUuLuqbnq071VVW6tqrqrmZmaWvVWGJOkotTw09FzggiR3AO8DXpjkT5eM2Q9sAkiyFjgFuKdhJknSEs2KoKour6qNVTULXAx8qqpeuWTYDuBVw/RFwxgfoixJEzTxu48muRKYr6odwDXAtUn2AvcyKgxJ0gRNpAiq6i+Bvxymr1i0/O+Al08igyRpeX6zWJI6ZxFIUucsAknqnEUgSZ2zCCSpcxaBJHXOIpCkzlkEktQ5i0CSOmcRSFLnLAJJ6pxFIEmdswgkqXMWgSR1ziKQpM5ZBJLUuZYPrz8hyY1JvpTktiS/t8yYVydZSLJ7eP1aqzySpOW1fELZA8ALq+r+JOuAzyX5eFV9fsm466rq0oY5JEmH0KwIhofQ3z/MrhtePphekv6BaXqOIMmaJLuBu4EbqmrnMsNeluTmJNuTbGqZR5L0SE2LoKoeqqqnARuBc5I8ZcmQjwCzVfVU4AZg23Lvk2RLkvkk8wsLCy0jS1J3JnLVUFV9G/g0cP6S5fdU1QPD7NXAM1bYfmtVzVXV3MzMTNOsktSbllcNzSQ5dZg+ETgP+PKSMacvmr0A2NMqjyRpeS2vGjod2JZkDaPCeX9VfTTJlcB8Ve0AfivJBcBB4F7g1Q3zSJKW0fKqoZuBpy+z/IpF05cDl7fKIEk6PL9ZLEmdswgkqXMWgSR1ziKQpM5ZBJLUOYtAkjpnEUhS5ywCSeqcRSBJnbMIJKlzFoEkdc4ikKTOWQSS1DmLQJI6ZxFIUucsAknqnEUgSZ1r+cziE5LcmORLSW5L8nvLjHlskuuS7E2yM8lsqzySpOW13CN4AHhhVZ0FPA04P8mzl4x5LfCtqnoicBXwpoZ5JEnLaFYENXL/MLtueNWSYRcC24bp7cC5SdIqkyTpkZqeI0iyJslu4G7ghqrauWTIBuBOgKo6CNwHnLbM+2xJMp9kfmFhoWVkSepO0yKoqoeq6mnARuCcJE85yvfZWlVzVTU3MzNzTDNKUu8mctVQVX0b+DRw/pJV+4FNAEnWAqcA90wikyRppOVVQzNJTh2mTwTOA768ZNgO4FXD9EXAp6pq6XkESVJDaxu+9+nAtiRrGBXO+6vqo0muBOaragdwDXBtkr3AvcDFDfNIkpbRrAiq6mbg6cssv2LR9N8BL2+VQZJ0eH6zWJI6ZxFIUucsAknqnEUgSZ2zCCSpcxaBJHXOIpCkzlkEktQ5i0CSOmcRSFLnLAJJ6pxFIEmdswgkqXMWgSR1ziKQpM5ZBJLUOYtAkjrX8pnFm5J8OsntSW5L8rplxrwgyX1Jdg+vK5Z7L0lSO2M9qjLJT1fVLUf43geB366qXUlOBm5KckNV3b5k3Ger6qVH+N6SpGNk3D2C/5bkxiT/Nskp42xQVXdV1a5h+m+BPcCGo8wpSWpkrCKoqucBvwxsYvSX/XuSnDfuD0kyy+hB9juXWf2cJF9K8vEkP7XC9luSzCeZX1hYGPfHSpLGMPY5gqr6a+A/Ab8D/HPgzUm+nOSXDrVdkh8GPgi8vqoOLFm9C3hCVZ0FvAX4sxV+9taqmququZmZmXEjS5LGMFYRJHlqkqsYHd55IfDzVfWTw/RVh9huHaMSeHdVfWjp+qo6UFX3D9PXA+uSrD/yjyFJOlrj7hG8hdFf72dV1SWLjv1/g9FewiMkCXANsKeq/nCFMY8fxpHknCHPPUf2ESRJj8ZYVw0BLwG+V1UPASR5DHBCVX23qq5dYZvnAr8C3JJk97DsDcBmgKp6O3AR8JtJDgLfAy6uqjqqTyJJOirjFsEngZ8F7h/mTwI+AfzMShtU1eeAHOpNq+qtwFvHzCBJamDcQ0MnPHwsH2CYPqlNJEnSJI1bBN9JcvbDM0mewehQjiTpODfuoaHXAx9I8g1Gh3seD/zrVqEkSZMzVhFU1ReS/ATwpGHRV6rq++1iSZImZdw9AoBnArPDNmcnoare1SSVJGlixr3p3LXAPwV2Aw8NiwuwCCTpODfuHsEc8GSv8Zek1Wfcq4ZuZXSCWJK0yoy7R7AeuD3JjcADDy+sqguapJIkTcy4RfC7LUNIkqZn3MtHP5PkCcCZVfXJJCcBa9pGkyRNwri3of51YDvwJ8OiDazw7ABJ0vFl3JPFlzC6m+gB+PuH1Pxoq1CSpMkZtwgeqKoHH55JspbR9wgkSce5cYvgM0neAJw4PKv4A8BH2sWSJE3KuEVwGbAA3AL8BnA9KzyZTJJ0fBn3qqH/C/z34SVJWkXGvWrob5J8denrMNtsSvLpJLcnuS3J65YZkyRvTrI3yc2Ln3kgSZqMI7nX0MNOAF4O/OPDbHMQ+O2q2pXkZOCmJDdU1e2LxrwIOHN4PQt42/CvJGlCxtojqKp7Fr32V9UfMXqg/aG2uauqdg3TfwvsYfT9g8UuBN5VI58HTk1y+hF/CknSURv3NtSLD9k8htEewtjPMkgyCzwd2Llk1QbgzkXz+4Zldy3ZfguwBWDz5s3j/thHmL3sY0e97fHqjt8/ZF9L0tj/mf+XRdMHgTuAfzXOhkl+GPgg8PqqOnBE6QZVtRXYCjA3N+f3FyTpGBr3qqF/cTRvnmQdoxJ4d1V9aJkh+4FNi+Y3DsskSRMy7qGh/3Co9VX1h8tsE+AaYM9y6wc7gEuTvI/RSeL7ququFcZKkho4kquGnsnoP26AnwduBP76ENs8F/gV4JYku4dlbwA2A1TV2xl9Me3FwF7gu8BrjiC7JOkYGLcINgJnD1f/kOR3gY9V1StX2qCqPgfkUG86PPrykjEzSJIaGPcWEz8GPLho/sFhmSTpODfuHsG7gBuTfHiY/wVgW5NEkqSJGveqof+c5OPA84ZFr6mqL7aLJUmalHEPDQGcBByoqv8K7EtyRqNMkqQJGvemc28Efge4fFi0DvjTVqEkSZMz7h7BLwIXAN8BqKpvACe3CiVJmpxxi+DB4VLPAkjyuHaRJEmTNG4RvD/JnzC6O+ivA5/Eh9RI0qpw2KuGhltFXAf8BHAAeBJwRVXd0DibJGkCDlsEVVVJrq+qnwb8z1+SVplxDw3tSvLMpkkkSVMx7jeLnwW8MskdjK4cCqOdhae2CiZJmoxDFkGSzVX1deDnJpRHkjRhh9sj+DNGdx39WpIPVtXLJpBJkjRBhztHsPg20j/eMogkaToOVwS1wrQkaZU43KGhs5IcYLRncOIwDf//ZPGPNE0nSWrukHsEVbWmqn6kqk6uqrXD9MPzhyyBJO9IcneSW1dY/4Ik9yXZPbyueDQfRJJ0dMa9fPRovBN4K6OH2qzks1X10oYZJEmHcSTPIzgiVfVXwL2t3l+SdGw0K4IxPSfJl5J8PMlPrTQoyZYk80nmFxYWJplPkla9aRbBLuAJVXUW8BZG31lYVlVtraq5qpqbmZmZVD5J6sLUiqCqDlTV/cP09cC6JOunlUeSejW1Ikjy+OEW1yQ5Z8hyz7TySFKvml01lOS9wAuA9Un2AW9k9KxjqurtwEXAbyY5CHwPuHh4CpokaYKaFUFVveIw69/K6PJSSdIUTfuqIUnSlFkEktQ5i0CSOmcRSFLnLAJJ6pxFIEmdswgkqXMWgSR1ziKQpM5ZBJLUOYtAkjpnEUhS5ywCSeqcRSBJnbMIJKlzFoEkdc4ikKTONSuCJO9IcneSW1dYnyRvTrI3yc1Jzm6VRZK0spZ7BO8Ezj/E+hcBZw6vLcDbGmaRJK2gWRFU1V8B9x5iyIXAu2rk88CpSU5vlUeStLxmD68fwwbgzkXz+4Zldy0dmGQLo70GNm/ePJFwq8XsZR+bdgRJ/8AdFyeLq2prVc1V1dzMzMy040jSqjLNItgPbFo0v3FYJkmaoGkWwQ7gV4erh54N3FdVjzgsJElqq9k5giTvBV4ArE+yD3gjsA6gqt4OXA+8GNgLfBd4TasskqSVNSuCqnrFYdYXcEmrny9JGs9xcbJYktSORSBJnbMIJKlzFoEkdc4ikKTOWQSS1DmLQJI6ZxFIUucsAknqnEUgSZ2zCCSpcxaBJHXOIpCkzlkEktQ5i0CSOmcRSFLnLAJJ6lzTIkhyfpKvJNmb5LJl1r86yUKS3cPr11rmkSQ9UstnFq8B/hg4D9gHfCHJjqq6fcnQ66rq0lY5JEmH1nKP4Bxgb1V9taoeBN4HXNjw50mSjkLLItgA3Lloft+wbKmXJbk5yfYkm5Z7oyRbkswnmV9YWGiRVZK6Ne2TxR8BZqvqqcANwLblBlXV1qqaq6q5mZmZiQaUpNWuZRHsBxb/hb9xWPb3quqeqnpgmL0aeEbDPJKkZbQsgi8AZyY5I8kPARcDOxYPSHL6otkLgD0N80iSltHsqqGqOpjkUuAvgDXAO6rqtiRXAvNVtQP4rSQXAAeBe4FXt8ojSVpesyIAqKrrgeuXLLti0fTlwOUtM0iSDm3aJ4slSVNmEUhS5ywCSeqcRSBJnbMIJKlzFoEkdc4ikKTOWQSS1DmLQJI6ZxFIUucsAknqnEUgSZ2zCCSpcxaBJHXOIpCkzlkEktQ5i0CSOte0CJKcn+QrSfYmuWyZ9Y9Nct2wfmeS2ZZ5JEmP1KwIkqwB/hh4EfBk4BVJnrxk2GuBb1XVE4GrgDe1yiNJWl7LPYJzgL1V9dWqehB4H3DhkjEXAtuG6e3AuUnSMJMkaYmWD6/fANy5aH4f8KyVxlTVwST3AacB31w8KMkWYMswe3+SrzRJ3NZ6lnyuDviZJyTT25f2dzxBj/L3/ISVVrQsgmOmqrYCW6ed49FIMl9Vc9POMUl+5tWvt88Lq/Mztzw0tB/YtGh+47Bs2TFJ1gKnAPc0zCRJWqJlEXwBODPJGUl+CLgY2LFkzA7gVcP0RcCnqqoaZpIkLdHs0NBwzP9S4C+ANcA7quq2JFcC81W1A7gGuDbJXuBeRmWxWh3Xh7aOkp959evt88Iq/MzxD3BJ6pvfLJakzlkEktQ5i6CxJHckuSXJ7iTz084zCUlOTbI9yZeT7EnynGlnainJk4bf78OvA0leP+1crSX590luS3JrkvcmOWHamVpL8rrh8962mn7HniNoLMkdwFxVdfOlmyTbgM9W1dXDFWMnVdW3pxxrIoZbq+wHnlVVX5t2nlaSbAA+Bzy5qr6X5P3A9VX1zukmayfJUxjdIeEc4EHgz4F/U1V7pxrsGHCPQMdUklOA5zO6IoyqerCXEhicC/yv1VwCi6wFThy+A3QS8I0p52ntJ4GdVfXdqjoIfAb4pSlnOiYsgvYK+ESSm4ZbZax2ZwALwP9I8sUkVyd53LRDTdDFwHunHaK1qtoP/AHwdeAu4L6q+sR0UzV3K/C8JKclOQl4MT/4pdnjlkXQ3j+rqrMZ3YX1kiTPn3agxtYCZwNvq6qnA98BHnEL8tVoOAx2AfCBaWdpLck/YnTTyDOAfwI8Lskrp5uqraraw+gOyZ9gdFhoN/DQNDMdKxZBY8NfTlTV3cCHGR1fXM32Afuqaucwv51RMfTgRcCuqvo/0w4yAT8L/E1VLVTV94EPAT8z5UzNVdU1VfWMqno+8C3gf04707FgETSU5HFJTn54GviXjHYvV62q+t/AnUmeNCw6F7h9ipEm6RV0cFho8HXg2UlOGm4dfy6wZ8qZmkvyo8O/mxmdH3jPdBMdG8fF3UePYz8GfHh4xMJa4D1V9efTjTQR/w5493Co5KvAa6acp7mh6M8DfmPaWSahqnYm2Q7sAg4CX2QV3nphGR9MchrwfeCS1XIhhJePSlLnPDQkSZ2zCCSpcxaBJHXOIpCkzlkEktQ5i0CSOmcRSFLn/h/UriotQ/UyLAAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "df[\"Age\"].plot(kind=\"hist\", bins=np.array([4, 5, 6, 7, 8, 9]) + 0.5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Matplotlib" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.bar(\n", " x=freq_table_df[\"Age\"],\n", " height=freq_table_df[\"# at age\"],\n", " color=[\"orange\", \"magenta\", \"green\", \"orange\", \"red\", \"blue\", \"brown\"],\n", ")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Seaborn" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.barplot(x=freq_table_df[\"Age\"], y=freq_table_df[\"# at age\"])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plotly" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "marker": { "color": [ "orange", "magenta", "green", "orange", "red", "blue" ] }, "type": "bar", "x": [ 7, 9, 5, 12, 6, 10 ], "y": [ 4, 4, 2, 2, 1, 1 ] } ], "layout": { "autosize": true, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "xaxis": { "autorange": true, "range": [ 4.5, 12.5 ], "type": "linear" }, "yaxis": { "autorange": true, "range": [ 0, 4.2105263157894735 ], "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAABLIAAAHCCAYAAAD7BuCfAAAgAElEQVR4Xu3db8zvd13f8e85p60toZZa/tQCUkBZmZGqW7HZYmKy3lhsXCZLFZUYKPI3M5CKpDaRG5iUDpDgHVD+VKyudql02RSyxSUzQw0bG7MoA2+AYzMngNZS2tjTltNr+R08Z6cXp5zrd717fT+vz+fz4M6Cu77n974er2/K6bPnnB7a2dnZWfyHAAECBAgQIECAAAECBAgQIECAQLjAISErfCHnESBAgAABAgQIECBAgAABAgQInBAQsrwIBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhyztAgAABAgQIECBAgAABAgQIECDQhYCQ1cVMjiRAgAABAgQIECBAgAABAgQIEBCyvAMECBAgQIAAAQIECBAgQIAAAQJdCAhZXczkSAIECBAgQIAAAQIECBAgQIAAASHLO0CAAAECBAgQIECAAAECBAgQINCFgJDVxUyOJECAAAECBAgQIECAAAECBAgQELK8AwQIECBAgAABAgQIECBAgAABAl0ICFldzORIAgQIECBAgAABAgQIECBAgAABIcs7QIAAAQIECBAgQIAAAQIECBAg0IWAkNXFTI4kQIAAAQIECBAgQIAAAQIECBAQsrwDBAgQIECAAAECBAgQIECAAAECXQgIWV3M5EgCBAgQIECAAAECBAgQIECAAAEhq/gOHL3nweKP4HECBAgQIECAAAECBAgQIEBgFoHLLrlglm/1QL5PIavIKmQVAT1OgAABAgQIECBAgAABAgQmEhCyamMLWTW/RcgqAnqcAAECBAgQIECAAAECBAhMJCBk1cYWsmp+QlbRz+MECBAgQIAAAQIECBAgQGAmASGrtraQVfMTsop+HidAgAABAgQIECBA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QIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTkDI6m4yBxMgQIAAAQIECBAgQIAAAQIE5hQQsubc3XdNgAABAgQIECBAgAABAgQIEOhOQMjqbjIHEyBAgAABAgQIECBAgAABAgTmFBCy5tzdd02AAAECBAgQIECAAAECBAgQ6E5AyOpuMgcTIECAAAECBAgQIECAAAECBOYUELLm3N13TYAAAQIECBAgQIAAAQIECBDoTuD/AfaKjBMkKk1+AAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data = [\n", " go.Bar(\n", " x=freq_table_df[\"Age\"],\n", " y=freq_table_df[\"# at age\"],\n", " marker=dict(color=[\"orange\", \"magenta\", \"green\", \"orange\", \"red\", \"blue\"]),\n", " )\n", "]\n", "fig = go.Figure(data=data)\n", "fig.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Statsmodels" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "dot_plot(df[\"Age\"])\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" }, "toc-autonumbering": true, "toc-showcode": false, "toc-showmarkdowntxt": false, "toc-showtags": false }, "nbformat": 4, "nbformat_minor": 4 }